Live imaging of a device

ABSTRACT

Live imaging of a device can be performed. A client device can include at least two drives that are alternately employed to store the active OS partition. An imaging solution that executes on the active OS partition on a first drive can perform a live imaging process in which a second drive is fully imaged while the user continues to use the client device. Then, once the imaging of the second drive has been completed, the client device can be rebooted to cause the client device to boot from the second drive. In this way, the only downtime that a user may experience due to the imaging process is during the reboot. In a similar manner, when a client device includes only a single available drive, the drive can be divided into two or more sets of one or more partitions that are alternately employed as the active OS partition(s).

CROSS-REFERENCE TO RELATED APPLICATIONS

N/A

BACKGROUND

Autogenic imaging is a technique for imaging a device with the imageresiding in a backup partition of the device's flash or hard drive.Typically, a device that is configured to be updated via Autogenicimaging will have a drive that includes at least three partitions: (1) aboot agent partition where the imaging solution resides; (2) the activeoperating system (OS) partition; and (3) the backup partition. Thebenefit of Autogenic imaging is that the image is downloaded to thebackup partition in the background. Therefore, the image can bedownloaded to the device while the device is being used thus reducingthe downtime required to image the device.

However, once the image is downloaded to the backup partition and it isdesired to deploy the image, the device must be restarted to boot fromthe boot agent partition thereby allowing the imaging solution on thatpartition to perform the imaging operation on the OS partition (i.e., tocopy the image from the backup partition to the OS partition). While theimaging solution performs this function, the device will not be usable(because the boot agent partition only includes a minimal kernelsufficient to perform the imaging operation). Also, because the newimage is written to the OS partition, the previous contents of the OSpartition will be lost possibly including any user data that was storedon the OS partition. Further, even though the backup partition islogically separate from the OS partition, they reside on the same drive.Therefore, if there is a drive or boot failure, it will not be possibleto image the device remotely (which is how many thin client and othermanaged devices are imaged). Additionally, if the imaging process failsfor some reason, there will be no fall back mechanism since the contentsof the OS partition will have been modified during the process. Finally,even if the imaging process completes successfully, it may still benecessary for any user profile that was previously applied to the deviceto be recreated. This is especially true when the imaging involves anupgrade to a newer version of the operating system.

BRIEF SUMMARY

The present invention extends to methods, systems, and computer programproducts for performing live imaging of a device. A client device caninclude at least two drives that are alternately employed to store theactive OS partition. An imaging solution that executes on the active OSpartition on a first drive can perform a live imaging process in which asecond drive is fully imaged while the user continues to use the clientdevice. Then, once the imaging of the second drive has been completed,the client device can be rebooted to cause the client device to bootfrom the second drive. In this way, the only downtime that a user mayexperience due to the imaging process is during the reboot. Similarly,if a device only includes a single drive, the present invention canstill be implemented by dividing the drive into two or more sets of oneor more partitions that are alternately employed as the active OSpartition(s).

In some embodiments, the present invention is implemented as a methodfor performing live imaging of a client device. While a first operatingsystem that is included in a first image on a first set of one or morepartitions of a drive of the client device is executing, an imagingsolution that is executed by the first operating system can obtain asecond image that includes a second operating system. While the firstoperating system continues to execute, the imaging solution can writethe second image to a second set of one or more partitions of a drive ofthe client device to cause the second set of one or more partitions tobe capable of booting the second operating system and then update theclient device to cause the client device to boot from the second set ofone or more partitions. The client device can then be rebooted to causethe second operating system to be executed.

In other embodiments, the present invention is implemented as computerstorage media storing computer executable instructions which whenexecuted on a client device implement a method for performing liveimaging of the client device. The method can include: obtaining, by animaging solution that is executed on a first operating system that isinstalled on a first set of one or more partitions of a drive of theclient device, a new image that includes a second operating system;writing, by the imaging solution, the second image to a second set ofone or more partitions of a drive of the client device to cause thesecond set of one or more partitions to be capable of booting the secondoperating system; and causing, by the imaging solution, the clientdevice to reboot from the second set of one or more partitions such thatthe second operating system is executed.

In other embodiments, the present invention is implemented as a clientdevice that includes: a first drive containing a first image, the firstimage including a first operating system and an imaging solution; asecond drive; and one or more processors configured to execute the firstoperating system. While the first operating system is executed, theimaging solution obtains and writes a second image containing a secondoperating system to the second drive to cause the client device to becapable of rebooting directly from the first operating system to thesecond operating system.

This summary is provided to introduce a selection of concepts in asimplified form that are further described below in the DetailedDescription. This Summary is not intended to identify key features oressential features of the claimed subject matter.

BRIEF DESCRIPTION OF THE DRAWINGS

Understanding that these drawings depict only typical embodiments of theinvention and are not therefore to be considered limiting of its scope,the invention will be described and explained with additionalspecificity and detail through the use of the accompanying drawings inwhich:

FIG. 1 illustrates an example computing environment in which the presentinvention can be implemented;

FIGS. 2A-2C illustrate how the live imaging process of the presentinvention can be implemented to image a second drive with a newoperating system while the operating system on a first drive isexecuting;

FIG. 3 illustrates how licensing data can be automatically copied to anew image as part of the live imaging process to thereby activate theoperating system in the new image using the licensing data employed toactivate the currently active operating system;

FIG. 4 illustrates how configuration settings can be automaticallysynchronized to a new image as part of the live imaging process tothereby customize the new image in accordance with customizations madeto the current image;

FIGS. 5A-5C illustrate how the live imaging process of the presentinvention can be implemented to image a second partition of a drive witha new operating system while the operating system on a first partitionof the same drive is executing; and

FIG. 6 illustrates a flowchart of an example method for performing liveimaging of a client device.

DETAILED DESCRIPTION

FIG. 1 illustrates an example computing environment 100 in which thepresent invention can be implemented. Computing environment 100 includesa number of client devices 102 a-102 n that are interconnected with aserver 104 via a network 106. Client devices 102 a-102 n (or generallyclient device 102) can typically be thin or zero client devices that aremanaged by server 104. However, the present invention can also beimplemented when client devices 102 a-102 n are any type of device thatis capable of being imaged. Network 106 can represent any number andtype of networks including a local area network and/or the internet.Server 104 can act as a repository for images such that client devices102 a-102 n can download an image from server 104. Server 104 may alsofunction to manage client devices 102 a-102 n. Although a single server104 is depicted, any number of servers can be employed for managing anddeploying images to client devices 102 a-102 n. In some embodiments, acloud-based management server may be employed to manage client devices102 a-102 n while a local server may be employed as the repository fordownloading images to the client devices. In some embodiments, a clientdevice 102 may obtain an image from another client device 102 (i.e., ina peer-to-peer fashion). Accordingly, the exact architecture ofcomputing environment 100 is not essential to the invention.

FIGS. 2A-2C illustrate an example architecture of client device 102. Asshown, a client device 102 can include two drives 201 and 202. Drives201 and 202 can be any type of drive, such as a hard drive or a flashdrive, that is capable of storing an OS partition. For ease inillustration, drives 201 and 202 are depicted as including a singlepartition. However, either of these drives could include a number ofpartitions.

In FIG. 2A, it will be assumed that drive 201 is the active drive andtherefore stores the operating system for client device 102. At thispoint, it will be assumed that drive 202 does not store any content;however, drive 202 could include any type of content including aninactive operating system (e.g., an older version of the operatingsystem employed on client device 102).

Drive 201 is also shown as including an imaging solution that is storedon the same partition as the operating system (or that is at leastaccessible from the OS partition) so that the imaging solution can beexecuted while the operating system is executing. In other words,because the imaging solution is not part of a separate boot agentpartition, the imaging solution can execute while the user is activelyusing client device 102. For illustrative purposes only, drive 201 isalso shown as including other data and free space. This other data canbe any type of data including user applications, user data, etc.

Turning to FIG. 2B, the imaging solution that is executed by theoperating system on drive 201 can receive a command to obtain a newimage. For example, this command can be received from server 104 andcould include information defining where to obtain the new image (e.g.,a URL). In response to receiving this command, the imaging solution canobtain the new image and write it to drive 202 (e.g., using Merlinimaging techniques). This process of writing the new image to drive 202can be performed while the operating system on drive 201 continues toexecute (i.e., without restarting client device 102 to boot into aseparate boot agent partition). In other words, while the imagingsolution is writing the new image to drive 202, the user can continue touse client device 102 in a standard manner. In some embodiments, uponreceiving the command to obtain the new image, the imaging solution canprompt the user to indicate whether the imaging process should proceedat that time or should be delayed until a later time. Therefore, theimaging solution can give the user control over when resources will beutilized to perform the imaging process.

As shown in FIG. 2B, the new image can include an operating system(which in this case is assumed to be an upgraded operating system), theimaging solution (or possibly a newer version of the imaging solution),and possibly other data (e.g., user applications and/or user data).Accordingly, once the new image is written to one or more partitions ofdrive 202, client device 102 could be booted from drive 202 (or moreparticularly, from the partition on drive 202 containing the operatingsystem). As will be further described below, in some embodiments of theinvention, as part of copying the new image to drive 202, the imagingsolution may also copy user settings or other configuration parametersemployed by the operating system on drive 201 to drive 202 so that theupdated operating system can also employ these user settings or otherconfiguration parameters without requiring the user to manually recreatethese settings in the updated operating system.

Once the imaging solution has written the new image to drive 202, drive202 will include a bootable partition. Therefore, as shown in FIG. 2C,to complete the imaging process, the imaging solution can change theactive partition to the partition on drive 202 containing the new image(or at least containing the updated operating system in cases where thenew image may span more than one partition). It is again noted that eachof these steps of the imaging process can be performed while the user isactively using client device 102. Finally, with the active partitionupdated, client device 102 can be rebooted thereby causing the updatedoperating system on drive 202 to be loaded. Therefore, the only downtimeduring the entire imaging process will occur while client device 102reboots. Given that this reboot will occur in a relatively short amountof time, the user will experience very little downtime. Prior torebooting client device 102, the imaging solution can notify the userthat a reboot is required and allow the user to elect whether to deferthe reboot to a later time. This can additionally minimize the downtimethe user may experience when client device 102 is updated.

Because the new image also includes the imaging solution, this sameprocess can be repeated at a later time to again install a new image.However, in this case, the imaging solution on drive 202 will obtain andwrite the new image to drive 201. In this way, imaging can alternatebetween the two drives so that the imaging process can always beperformed while the user is actively using client device 102. Anotherbenefit is that if the imaging process on drive 202 does not completesuccessfully, it will still be possible to boot from drive 201 in thesame manner as before the imaging process was initiated. Similarly, anyuser data on drive 201 will not be overwritten when the new image iswritten to drive 202. Therefore, the user may continue to access theuser data on drive 201 as necessary (at least until a newer image iswritten to drive 201). Further, if drive 202 fails for some reason,drive 201 will remain available to remotely boot client device 102.

When operating systems such as Windows are installed on a device, theoperating system typically must be activated on that device. As part ofthis activation, an association is created between the operating systemand the hardware of the device to ensure that the operating system isbeing employed in accordance with the relevant license. For example,this association can prevent a single copy of an operating system frombeing installed on multiple devices. In the case of managed devices suchas thin client, this activation process can be employed to track thenumber of devices on which the operating system is installed.

When the imaging techniques of the present invention are employed toinstall an updated version of the same operating system that was alreadyinstalled on the device, the imaging solution can ensure that theupdated version of the operating system in the new image will beactivated using the same license and/or activation code that waspreviously used to activate the now older version of the operatingsystem on the client device.

FIG. 3 represents how this activation can be accomplished. In thisexample, it is assumed that drive 201 includes version 1.1 of theWindows Embedded Standard 7 (WES7) operating system and that the newimage written to drive 202 includes a version 1.2 of WES7. Because thesame operating system (albeit an updated version) will continue to beused on client device 102, a new license should not be required forclient device 102. However, because WES7 Version 1.2 is being installedon a different drive than WES7 Version 1.1, the activation of WES7 ondrive 202 could result in a new license being required (due to thelicensing being based on the underlying hardware of the device which,from WES7's perspective, will have changed).

To address this, as part of writing the new image to drive 202, theimaging solution executing from drive 201 can obtain the license,activation code, or any other similar type of licensing data that isemployed when an operating system is installed (hereinafter generallyreferred to as “licensing data”) which was used to activate WES7 Version1.1 and again use the licensing data to activate WES7 Version 1.2 ondrive 202. The imaging solution can automatically copy this licensingdata in any suitable manner such as by writing the licensing data into aparticular location on drive 202 where such data should be stored (e.g.,within an appropriate registry entry). Then, when WES7 Version 1.2 isbooted from drive 202, the updated version of the OS can be activatedusing the same license data that was used previously to activate WES7Version 1.1. In this way, a new license will not be required even thoughit may appear that WES7 Version 1.2 has been installed on a new clientdevice. It is noted that, when the new image includes a differentoperating system (e.g., Windows Embedded 8 Standard as opposed to anupdated version of WES7), a different license will be required, andtherefore, this copying of licensing data as part of the imaging processwill not be performed.

As mentioned above, in some embodiments, the imaging solution may alsobe tasked with synchronizing a user's configuration settings to the newimage. FIG. 4 represents how this can be accomplished. As shown, theimage on drive 201 can include configuration settings which canrepresent any customization that has been made to the image on drive201. When switching to the new image on drive 202 which may include anupdated or new operating system, these customizations would otherwise belost. However, in accordance with embodiments of the present invention,the imaging solution can identify the configuration settings on drive201 and update the new image in accordance with these configurationsettings. Although FIG. 4 depicts the configuration settings as beingpart of the “other data,” the configuration settings can include acustomization to any part of the image including the operating system.For example, these configuration settings can include registry settingsin a Windows environment.

When the new image includes an updated version of the same operatingsystem, the configuration settings from drive 201 can largely be copieddirectly to the new image on drive 202. However, when the new imageincludes a new operating system, the imaging solution may need to adaptat least some of the configuration settings to the new operating system.For example, if the new operating system employs a different registrykey to perform a particular customization that was made on drive 201,the imaging solution can modify the corresponding configuration settingwhen writing it to drive 202 so that it accomplishes the same or similarcustomization in the new operating system. In some embodiments, theseconfiguration settings could be stored in a remote repository ratherthan on drive 201. In such cases, the imaging solution can access theremote repository to obtain the configuration settings and then modifythe new image to synchronize these configuration settings to the new orupdated operating system.

To summarize, a client device can include at least two drives that arealternately employed to store the active OS partition. An imagingsolution that executes on the active OS partition on one drive canperform a live imaging process in which another drive is fully imagedwhile the user continues to use the client device. This live imagingprocess can even include configuring the new image to automaticallyactivate an updated operating system or to customize the new image inaccordance with a user's existing configuration settings on thecurrently active drive.

Although the above description relates to embodiments where clientdevice 102 includes two drives that are alternately employed to storethe active OS partition, the present invention can also be implementedwhen a client device 102 includes a single drive that can store anactive OS partition. In such cases, this single drive can be dividedinto two sets of one or more partitions that alternately store theactive OS partition in substantially the same way as described above.

FIGS. 5A-5C generally represent how the present invention can beimplemented when a client device does not have two available drives. Asshown, client device 102 includes a drive 501 that is divided into atleast two sets of partitions, including set 501 a and set 501 b. Each ofsets 501 a and 501 b can include at least one partition. Both sets 501 aand 501 b can be large enough to store an image that includes anoperating system (e.g., each set can include a partition that is largeenough to store the operating system in an image that may be written tothe set).

FIG. 5A, like FIG. 2A, represents the case where set 501 a includes theactive OS partition. Set 501 a will therefore include an operatingsystem, an imaging solution, other data, and possibly free space.Although set 501 b is shown as being empty, this need not necessarily bethe case. Then, as shown in FIG. 5B, when it is desired to update clientdevice 102 with a new image, a command can be sent to the imagingsolution that is executed by the operating system on set 501 ainstructing the imaging solution to obtain the new image.

In response, the imaging solution can obtain the new image and write itto set 501 b. This new image includes an updated or new operatingsystem, an imaging solution, other data, and possibly free space. Also,as part of writing the new image to set 501 b, the imaging solution onset 501 a can take any of the additional steps described above toactivate, register, customize, etc. the operating system or any othercomponent in the new image.

Finally, as shown in FIG. 5C, with the new image written to set 501 b,the imaging solution on set 501 a can change the active partition to thepartition in set 501 b that stores the operating system and then rebootclient device 102 thereby causing client device to boot from set 501 b.Accordingly, although it may be preferred to implement the presentinvention in a client device that includes at least two drives, it isalso possible to do so in client devices with a single available drive.

FIG. 6 illustrates a flowchart of an example method 600 for performinglive imaging of a client device. As an example, method 600 can beperformed on client device 102 by the imaging solution that is executedon the operating system installed on drive 201. Alternately, method 600can be performed on client device 102 by the imaging solution that isexecuted on the operating system installed on set 501 a of drive 501.

Method 600 includes an act 601 of, while a first operating system thatis included in a first image on a first set of one or more partitions ofa drive of the client device is executing, obtaining, by an imagingsolution that is executed by the first operating system, a second imagethat includes a second operating system. For example, the imagingsolution on drive 201 or set 501 a can obtain a new image that includesa new or updated operating system.

Method 600 includes an act 602 of, while the first operating systemcontinues to execute, writing the second image to a second set of one ormore partitions of a drive of the client device to cause the second setof one or more partitions to be capable of booting the second operatingsystem. For example, the imaging solution on drive 201 or set 501 a canwrite the new image to drive 202 or set 501 b to enable client device102 to boot from drive 202 or set 501 b.

Method 600 includes an act 603 of, while the first operating systemcontinues to execute, updating the client device to cause the clientdevice to boot from the second set of one or more partitions. Forexample, the active partition on client device 102 can be changed fromthe partition of drive 201 containing the active operating system to thepartition of drive 202 containing the new or updated operating system orfrom a partition in set 501 a containing the operating system to apartition in set 501 b containing the operating system.

Method 600 includes an act 604 of rebooting the client device to causethe second operating system to be executed. For example, client device102 could be rebooted to cause the operating system on drive 202 or set501 b to be executed.

Embodiments of the present invention may comprise or utilize specialpurpose or general-purpose computers including computer hardware, suchas, for example, one or more processors and system memory. Embodimentswithin the scope of the present invention also include physical andother computer-readable media for carrying or storingcomputer-executable instructions and/or data structures. Suchcomputer-readable media can be any available media that can be accessedby a general purpose or special purpose computer system.

Computer-readable media is categorized into two disjoint categories:computer storage media and transmission media. Computer storage media(devices) include RAM, ROM, EEPROM, CD-ROM, solid state drives (“SSDs”)(e.g., based on RAM), Flash memory, phase-change memory (“PCM”), othertypes of memory, other optical disk storage, magnetic disk storage orother magnetic storage devices, or any other similarly storage mediumwhich can be used to store desired program code means in the form ofcomputer-executable instructions or data structures and which can beaccessed by a general purpose or special purpose computer. Transmissionmedia include signals and carrier waves.

Computer-executable instructions comprise, for example, instructions anddata which, when executed by a processor, cause a general purposecomputer, special purpose computer, or special purpose processing deviceto perform a certain function or group of functions. The computerexecutable instructions may be, for example, binaries, intermediateformat instructions such as assembly language or P-Code, or even sourcecode.

Those skilled in the art will appreciate that the invention may bepracticed in network computing environments with many types of computersystem configurations, including, personal computers, desktop computers,laptop computers, message processors, hand-held devices, multi-processorsystems, microprocessor-based or programmable consumer electronics,network PCs, minicomputers, mainframe computers, mobile telephones,PDAs, tablets, pagers, routers, switches, and the like.

The invention may also be practiced in distributed system environmentswhere local and remote computer systems, which are linked (either byhardwired data links, wireless data links, or by a combination ofhardwired and wireless data links) through a network, both performtasks. In a distributed system environment, program modules may belocated in both local and remote memory storage devices. An example of adistributed system environment is a cloud of networked servers or serverresources. Accordingly, the present invention can be hosted in a cloudenvironment.

The present invention may be embodied in other specific forms withoutdeparting from its spirit or essential characteristics. The describedembodiments are to be considered in all respects only as illustrativeand not restrictive. The scope of the invention is, therefore, indicatedby the appended claims rather than by the foregoing description.

What is claimed:
 1. A method for performing live imaging of a clientdevice comprising: while a first operating system that is included in afirst image on a first set of one or more partitions of a drive of theclient device is executing, obtaining, by an imaging solution that isexecuted by the first operating system, a second image that includes asecond operating system; while the first operating system continues toexecute, writing the second image to a second set of one or morepartitions of a drive of the client device to cause the second set ofone or more partitions to be capable of booting the second operatingsystem, wherein writing the second image includes: accessing one or moreregistry keys to obtain one or more configuration settings that arecurrently employed by the executing first operating system to customizeone or more components included in the first image, and modifying one ormore registry keys defined in the second image in accordance with theone or more configuration settings such that the one or moreconfiguration settings will be applied to customize corresponding one ormore components included in the second image when the second operatingsystem is executed on the client device; while the first operatingsystem continues to execute, updating the client device to cause theclient device to boot from the second set of one or more partitions; andrebooting the client device to cause the second operating system to beexecuted.
 2. The method of claim 1, wherein the client device includesat least two drives, and the first set of one or more partitions are ona different drive from the second set of one or more partitions.
 3. Themethod of claim 1, wherein the second operating system is an upgradedversion of the first operating system.
 4. The method of claim 1, whereinthe second operating system is a different operating system than thefirst operating system.
 5. The method of claim 1, wherein the one ormore components included in the first image include the first operatingsystem or one or more applications contained in the first image.
 6. Themethod of claim 1, wherein the second operating system is a differentoperating system than the first operating system, and wherein modifyingone or more registry keys defined in the second image in accordance withthe one or more configuration settings comprises adapting at least oneof the one or more configuration settings to correspond to the differentoperating system.
 7. The method of claim 1, wherein modifying one ormore registry keys defined in the second image comprises adding at leastone registry key to the second image.
 8. The method of claim 1, furthercomprising: while the first operating system continues to execute,notifying a user of the client device that the second image has beenwritten to the second set of one or more partitions and that the clientdevice needs to reboot to complete the live imaging; and wherein theclient device is rebooted in response to user input.
 9. The method ofclaim 1, wherein updating the client device to cause the client deviceto boot from the second set of one or more partitions comprises settingthe second set of one or more partitions as the active partition. 10.The method of claim 1, wherein the imaging solution obtains the secondimage in response to user input to the client device.
 11. A method forperforming live imaging of a client device comprising: while a firstoperating system that is included in a first image on a first set of oneor more partitions of a drive of the client device is executing,obtaining, by an imaging solution that is executed by the firstoperating system, a second image that includes a second operatingsystem; while the first operating system continues to execute, writingthe second image to a second set of one or more partitions of a drive ofthe client device to cause the second set of one or more partitions tobe capable of booting the second operating system, wherein writing thesecond image includes: identifying one or more configuration settingsthat are currently employed by the executing first operating system tocustomize one or more components included in the first image; modifyingthe second image in accordance with the one or more configurationsettings such that the one or more configuration settings will beapplied to customize corresponding one or more components included inthe second image when the second operating system is executed on theclient device; determining that the first and second operating systemsare the same operating system and that the second operating system is anupgraded version of the first operating system; identifying thelicensing data that the first operating system employs to verify thatthe first operating system is licensed to execute on the client device;and copying the licensing data to the second image for use by the secondoperating system to verify that the second operating system is licensedto execute on the client device; while the first operating systemcontinues to execute, updating the client device to cause the clientdevice to boot from the second set of one or more partitions; andrebooting the client device to cause the second operating system to beexecuted.
 12. The method of claim 11, wherein the licensing data is usedto activate the second operating system.
 13. One or more computerstorage media storing computer executable instructions which whenexecuted on a client device implement a method for performing liveimaging of the client device, the method comprising: obtaining, by animaging solution that is executed on a first operating system that isinstalled on a first set of one or more partitions of a drive of theclient device, a new image that includes a second operating system;writing, by the imaging solution, the second image to a second set ofone or more partitions of a drive of the client device to cause thesecond set of one or more partitions to be capable of booting the secondoperating system, wherein writing the second image includes: accessingone or more registry keys to obtain one or more configuration settingsthat are currently employed by the executing first operating system tocustomize one or more components included in the first image, andmodifying one or more registry keys defined in the second image inaccordance with the one or more configuration settings such that the oneor more configuration settings will be applied to customizecorresponding one or more components included in the second image whenthe second operating system is executed on the client device; andcausing, by the imaging solution, the client device to reboot from thesecond set of one or more partitions such that the second operatingsystem is executed.
 14. The computer storage media of claim 13, whereinwriting the second image to the second set of one or more partitionscomprises: identifying licensing data employed by the first operatingsystem; and copying the licensing data to the second image for use bythe second operating system such that the licensing data will be appliedwhen the second operating system is executed on the client device. 15.The computer storage media of claim 13, wherein writing the second imageincludes adding one or more registry keys to the second image.
 16. Aclient device comprising: a first drive containing a first image, thefirst image including a first operating system and an imaging solution;a second drive; and one or more processors configured to execute thefirst operating system; wherein, while the first operating system isexecuted, the imaging solution obtains and writes a second imagecontaining a second operating system to the second drive to cause theclient device to be capable of rebooting directly from the firstoperating system to the second operating system, and wherein as part ofwriting the second image, the imaging solution also: accesses one ormore registry keys to obtain one or more configuration settings that arecurrently employed by the executing first operating system to customizeone or more components included in the first image, and modifies one ormore registry keys defined in the second image in accordance with theone or more configuration settings such that the one or moreconfiguration settings will be applied to customize corresponding one ormore components included in the second image when the second operatingsystem is executed on the client device.
 17. The client device of claim16, wherein the imaging solution also modifies the second image toinclude licensing data that was employed by the first operating system.18. The client device of claim 16, wherein the imaging solution alsoadds one or more registry keys to the second image.
 19. The clientdevice of claim 16, wherein, upon writing the second image to the seconddrive, the imaging solution updates an active partition of the clientdevice from a partition of the first drive where the first operatingsystem is stored to a partition of the second drive where the secondoperating system is stored.